

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">

<html>
<head>
<script type="text/javascript" src="helpman_topicinit.js"></script>

<title>Add and Manage Packages [Enterprise Architect User Guide]</title>

<meta name="keywords" content="Enterprise Architect, Sparx Systems, UML, Automation Interface,Automation Interface Code Example, Add And Manage Packages,Add And Manage Packages,Add And Manage Packages Automation Interface Code Example,Package,Package Add And Manage, Automation Interface Code Example">
<meta http-equiv="Content-Type" content="text/html; charset=ISO-8859-1" />
<meta http-equiv="Content-Style-Type" content="text/css" />

<link type="text/css" href="default.css" rel="stylesheet" />
<style type="text/css">
  A, A:Visited
  {
    color: #00F;
  }

  A:Active, A:Hover
  {
    color: #F00;
  }

  OL
  {
    margin: 5px 0 5px 48px;
  }

  UL
  {
    margin-bottom: 3px;
    margin-top: 0;
  }

  #nsr
  {
    background-color: #D4DFFF;
  }

  #nsr A
  {
    text-decoration: none;
  }

  #mainbody
  {
    padding: 8px;
  }

  .p_BodyText
  {
    padding: 5px 0;
  }
</style>



<style type="text/css" media="screen">
  BODY
  {
    background-color: #FFFFFF;
  }

  #nsr
  {
    padding: 6px 6px 0 6px;
    border-bottom: none;
    vertical-align: top;
    z-index: 2;
    visibility: visible;
    left: 0;
    top: 0;
    position: absolute;
  }

  #mainbody
  {
    left: 0;
    top: 0;
    margin: 0;
    position: absolute;
    padding: 10px;
    overflow: auto;
    height: 100%;
    z-index: 1;
    background-repeat: no-repeat;
    background-position: bottom right;
    background-attachment: fixed;
  }
</style>

<style type="text/css" media="print">
  #nsr
  {
    visibility: none;
  }

  #mainbody
  {
    overflow: visible;
  }
</style>
<script type="text/javascript" language="JavaScript" src="nonscroll.js"></script>

</head>
<body scroll="no">

<div id="page">



        <div id="content">
          <div id="content-inner">
          



  
          <div id="nsr">
            <table border="0" cellspacing="0" cellpadding="4" width="100%">
              <tr valign="top">
                <td align="left">
  


                  <p class="p_Heading1"><span class="f_Heading1">Add and Manage Packages</span></p>



  
                </td>
                <td align="right">
                  <a href="introduction.htm" onmouseover="document.images.main.src='button_main_h.gif'" onmouseout="document.images.main.src='button_main.gif'">
                    <img name="main" src="button_main.gif" border=0 alt="Return to Introduction">
                  </a>&nbsp;
    
                  <a href="iteratethroughaneapfile.htm" onmouseover="document.images.prev.src='button_prev_h.gif'" onmouseout="document.images.prev.src='button_prev.gif'">
                    <img name=prev src="button_prev.gif" border=0 alt="Previous page" />
                  </a>&nbsp;
    
    
    
                  <a href="addandmanageelements.htm" onmouseover="document.images.next.src='button_next_h.gif'" onmouseout="document.images.next.src='button_next.gif'">
                    <img name=next src="button_next.gif" border=0 alt="Next page" />
                  </a>
    
    
                </td>
              </tr>
            </table>
          </div>
          <div id="mainbody">
  


                <p class="p_SubHeadingL1"><span class="f_SubHeadingL1">public Object</span></p>
<p class="p_Code"><span class="f_Code">&nbsp;</span></p>
<p class="p_Code"><span class="f_Code">Example illustrating how to add a Model or a Package.</span></p>
<p class="p_Code"><span class="f_Code">&nbsp;</span></p>
<p class="p_Code"><span class="f_Code">Sub TestPackageLifecycle</span></p>
<p class="p_Code"><span class="f_Code"> &nbsp;&nbsp; </span></p>
<p class="p_Code"><span class="f_Code"> &nbsp;&nbsp; Dim idx as integer</span></p>
<p class="p_Code"><span class="f_Code"> &nbsp;&nbsp; Dim idx2 as integer</span></p>
<p class="p_Code"><span class="f_Code"> &nbsp;&nbsp; Dim package as object</span></p>
<p class="p_Code"><span class="f_Code"> &nbsp;&nbsp; Dim model as object</span></p>
<p class="p_Code"><span class="f_Code"> &nbsp;&nbsp; Dim o as object</span></p>
<p class="p_Code"><span class="f_Code"> &nbsp;&nbsp; </span></p>
<p class="p_Code"><span class="f_Code"> &nbsp;&nbsp; ''first add a new Model</span></p>
<p class="p_Code"><span class="f_Code">&nbsp;</span></p>
<p class="p_Code"><span class="f_Code"> &nbsp;&nbsp; model = m_Repository.Models.AddNew(&quot;AdvancedModel&quot;,&quot;&quot;)</span></p>
<p class="p_Code"><span class="f_Code"> &nbsp;&nbsp; If not model.Update() Then</span></p>
<p class="p_Code"><span class="f_Code"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Console.WriteLine(model.GetLastError())</span></p>
<p class="p_Code"><span class="f_Code"> &nbsp;&nbsp; End If</span></p>
<p class="p_Code"><span class="f_Code">&nbsp;</span></p>
<p class="p_Code"><span class="f_Code"> &nbsp;&nbsp; ''refresh the models collection</span></p>
<p class="p_Code"><span class="f_Code"> &nbsp;&nbsp; m_Repository.Models.Refresh</span></p>
<p class="p_Code"><span class="f_Code">&nbsp;</span></p>
<p class="p_Code"><span class="f_Code"> &nbsp;&nbsp; ''now work through models collection and add a package</span></p>
<p class="p_Code"><span class="f_Code">&nbsp;</span></p>
<p class="p_Code"><span class="f_Code"> &nbsp;&nbsp; For idx = 0 to m_Repository.Models.Count -1</span></p>
<p class="p_Code"><span class="f_Code"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; o = m_Repository.Models.GetAt(idx)</span></p>
<p class="p_Code"><span class="f_Code"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Console.WriteLine(o.Name)</span></p>
<p class="p_Code"><span class="f_Code"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; If o.Name = &quot;AdvancedModel&quot; Then</span></p>
<p class="p_Code"><span class="f_Code"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; package = o.Packages.Addnew(&quot;Subpackage&quot;,&quot;Nothing&quot;)</span></p>
<p class="p_Code"><span class="f_Code"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; If not package.Update() Then</span></p>
<p class="p_Code"><span class="f_Code"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; Console.WriteLine(package.GetLastError())</span></p>
<p class="p_Code"><span class="f_Code"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; End If</span></p>
<p class="p_Code"><span class="f_Code"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; </span></p>
<p class="p_Code"><span class="f_Code"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; package.Element.Stereotype = &quot;system&quot;</span></p>
<p class="p_Code"><span class="f_Code"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; package.Update</span></p>
<p class="p_Code"><span class="f_Code">&nbsp;</span></p>
<p class="p_Code"><span class="f_Code">&nbsp;</span></p>
<p class="p_Code"><span class="f_Code"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ''for testing purposes just delete the</span></p>
<p class="p_Code"><span class="f_Code"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ''newly created Model and its contents</span></p>
<p class="p_Code"><span class="f_Code"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; m_Repository.Models.Delete(idx)</span></p>
<p class="p_Code"><span class="f_Code">&nbsp;</span></p>
<p class="p_Code"><span class="f_Code"> &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; End If</span></p>
<p class="p_Code"><span class="f_Code"> &nbsp;&nbsp; Next</span></p>
<p class="p_Code"><span class="f_Code">&nbsp;</span></p>
<p class="p_Code"><span class="f_Code">End Sub</span></p>




            </div>
          </div>
        </div>



</div>


</body>
</html>
